package tag38_02_09.threadsWeiter;

public class Th12_Aufgabe04Inkrement {

	static int count;
	
	public static void main(String[] args) throws InterruptedException {

		//Ein extra-Thread t1 inkrementiert die count 10000 mal um 1
				Thread t1 = new Thread() {
					public void run() {
						for (int i = 0; i < 10000; i++) {
							count++; //count = count + 1;
							
							//Z.B.: i = 120
							
							//1. count Wert in den CPU kopieren:
							//   int cpu = 120 
							//2. Im CPU die Kopie von count und 1 addieren:
							//   cpu = 121 // z.B. hier angehalten: (Runnable)
							//3. CPU-Wert in die count kopieren:
							//   count = 
						}
					}
				};
				
				//Ein extra-Thread t2 dekrementiert die count 10000 mal um 1
				Thread t2 = new Thread() {
					public void run() {
						for (int i = 0; i < 10000; i++) {
							count--;
						}
					}
				};
				
				t1.start();
				t2.start();
				
				//Der main-Thread wartet, bis die beiden vorbei sind und gibt 
				//danach count aus 
				
				t1.join();
				t2.join();
				
				System.out.println("count = " + count);
		
	}

}
